#include <iostream>

using std::cout;
using std::endl;

//C语言中的宏定义 也称为常量
//
//Q: 宏定义与const常量的区别？
//1. 发生的时机不一样，宏定义发生在预处理时，只是进行简单的文本替换
//const常量发生的时机是编译时
//
//2. 宏定义没有类型检查机制，出错时，会将发生错误的时机延迟到运行时
//const常量是编译时，有类型检查机制，在编译时就可以发现问题
//
//3. 这提醒我们，如果使用宏定义不当，发生错误的概率会更大一些,
//因此建议多用const关键字
#define MAX 1024

int main()
{
    const int num = 1;// const的常量
    //num = 10;//error，具有只读属性，无法进行修改
    cout << "num:" << num << endl;
    cout << "MAX:" << MAX << endl;

    return 0;
}

